package org.leetcode.easy.leetcode35;

public class Solution
{


    public int searchInsert3(int[] nums, int target){
        int left = 0;
        int right = nums.length-1;

        while (left<=right){
            int mid =(left+right)>>>1;
            if (nums[mid]==target){
                return mid;
            }else if (nums[mid]<target){
                left=mid+1;
            }else {
                right = mid-1;
            }
        }

        return left;
    }
    public int searchInsert2(int[] nums, int target){

        int left =0;
        int right=nums.length-1;
        while (left<=right){
            int mid = (left+right)>>>1;

            if (nums[mid]<target){
                left=mid+1;
            }else if (target<nums[mid]){
                right=mid-1;
            }else {
                return mid;
            }
        }
        return left;
    }
    public int searchInsert(int[] nums, int target)
    {
        int left = 0,right =nums.length-1;

        while (left<right)
        {
            int mid = (left+right)>>>1;

            if (target<nums[mid])
            {
                right=mid-1;
            }else if (nums[mid]<target)
            {
                left=mid+1;
            }else
            {
                return mid;
            }
        }

        return left;
    }
}
